home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor1 / fourier.doc < prev    next >
Text File  |  1995-03-31  |  5KB  |  117 lines

  1. Author: [Robert W Yoder] 
  2.   Subj: Digital Signal Processing 
  3.   Keyw: Fourier 
  4.   Date: Sat Jul 28 1990 07:02  
  5.  
  6. [Note: The FOURIER directory on the disk contains all the programs mentioned 
  7. below.  They were written for the HP 28, and merely ported to the HP 48; no 
  8. effort was made to redo them using more powerful 48 commands.  -jkh-] 
  9.  
  10. Here is a set of programs for digital signal processing. 
  11. Some have been posted before, and some are modifications of prior postings. 
  12. The DFT and FFT are the fastest/smallest I've found. 
  13. The Two-Dimensional Fourier programs are all new. 
  14.  
  15. These are posted as a set because many of them call others in the set. 
  16.  
  17. The following programs are called, but not listed here: 
  18.   "FAST" is a program thats sets the HP28 to maximum speed. 
  19.          [Note: since the 48 is already at full speed, I omitted all calls 
  20.          to the FAST program. -jkh-] 
  21.   "ROUN" is a program that cleans up the output to eliminate the inherent 
  22.          computational errors involving fractional parts containing trailing 
  23.          9's, or infinitesimal values.  I highly recommend using it. 
  24.          [Note: Replaced by -10 RND in the disk version.  -jkh-] 
  25.  
  26. Included are: 
  27.  
  28. Discrete Fourier Transform (also does inverse) 
  29. Fast Fourier Transform 
  30. Inverse Fast Fourier Transform 
  31. Fourier Transform (selects FFT or DFT depending on size) 
  32. Inverse Fourier Transform (selects FFT or DFT depending on size) 
  33. Periodic Convolution 
  34. Aperiodic Convolution 
  35. Two Dimensional Fourier Transform 
  36. Inverse Two Dimensional Fourier Transform 
  37. Axis Shifter for use with Two Dimensional Fourier Transforms 
  38. ------------------------------------------------------------------------------- 
  39. Discrete Fourier Transform 
  40.  
  41. input: level 2; vector 
  42. input: level 1; '1' for for fourier transform, '-1' for inverse transform 
  43. output:level 1; transformed vector 
  44. ------------------------------------------------------------------------------- 
  45. Fast Fourier Transform by lehmann_a%ELDE.EPFL.CH@VM1.NoDak.EDU 
  46.  
  47. input: level 2; vector 
  48. output:level 1; transformed vector 
  49. ------------------------------------------------------------------------------- 
  50. Inverse Fast Fourier Transform by: lehmann_a%ELDE.EPFL.CH@VM1.NoDak.EDU 
  51.  
  52. input: level 2; vector 
  53. output:level 1; transformed vector 
  54. ------------------------------------------------------------------------------- 
  55. Fourier Transform 
  56.  
  57. FT checks size and calls FFT if size is a power of 2, else calls DFT. 
  58.  
  59. input: level 1; vector 
  60. output:level 1; transformed vector 
  61. ------------------------------------------------------------------------------- 
  62. Inverse Fourier Transform 
  63.  
  64. INVFT checks size and calls FFTI if size is a power of 2, else calls DFT. 
  65.  
  66. input: level 2; vector 
  67. output:level 1; transformed vector 
  68. ------------------------------------------------------------------------------- 
  69. Periodic Convolution 
  70.  
  71. NOTE: Input vectors MUST be of same size! 
  72.  
  73. input: level 2; vector 
  74. input: level 2; vector 
  75.  
  76. output:level 1; convolved vector of same size 
  77. ------------------------------------------------------------------------------- 
  78. Aperiodic Convolution 
  79.  
  80. input: level 2; vector 
  81. input: level 1; vector 
  82.  
  83. output:level 1; convolved vector of size size(v1) + size(v2) - 1 
  84. ------------------------------------------------------------------------------- 
  85. Two Dimensional Fourier Transform 
  86.  
  87. NOTE: Number of rows, and number of columns, must be an even power of two. 
  88.       Pad matrix with zeroes if necessary. 
  89.  
  90. input: level 2; matrix 
  91. output:level 1; transformed matrix 
  92. ------------------------------------------------------------------------------- 
  93. Inverse Two Dimensional Fourier Transform 
  94.  
  95. NOTE: Number of rows, and number of columns, must be an even power of two. 
  96.       Pad matrix with zeroes if necessary. 
  97.  
  98. input: level 2; matrix 
  99. output:level 1; transformed matrix 
  100. ------------------------------------------------------------------------------- 
  101. Axis Shift for Two Dimensional Fourier Transforms 
  102.  
  103. Shifts axis from upper right corner to center of matrix, by swapping quadrant 
  104. 2 with quadrant 4, and swapping quadrant 1 with quadrant 4. 
  105.  
  106. NOTE: Number of rows, and number of columns, must be an even. 
  107.       Pad matrix with zeroes if necessary. 
  108.  
  109. input: level 2; matrix 
  110. output:level 1; shifted matrix 
  111.  
  112. --  
  113. Robert Yoder  306 Hawkins Graduate House, West Lafayette, IN 47906 (317)495-6845 
  114. Internet: ryoder@ecn.purdue.edu           "Flame all you want, We'll post more." 
  115. UUCP:     ryoder!pur-ee                         Apologies to Jay Leno & Doritos. 
  116. Bitnet:   ryoder@ecn.purdue.edu@purccvm.bitnet 
  117.